import Vue from 'vue'
import VueRouter from 'vue-router'
// import Login from "../components/Login.vue"
const Login = () => import(/* webpackChunkName: "login_home_welcome" */ '../components/Login.vue')
// import Home from "../components/Home.vue"
const Home = () => import(/* webpackChunkName: "login_home_welcome" */ '../components/Home.vue')
// import Welcome from "../components/Welcome.vue"
const Welcome = () => import(/* webpackChunkName: "login_home_welcome" */ '../components/Welcome.vue')

// import Users from "../components/users/Users.vue"
const Users = () => import(/* webpackChunkName: "user_rights_roles" */ '../components/users/Users.vue')
// import Rights from "../components/power/Rights.vue"
const Rights = () => import(/* webpackChunkName: "user_rights_roles" */ '../components/power/Rights.vue')
// import Roles from "../components/power/Roles.vue"
const Roles = () => import(/* webpackChunkName: "user_rights_roles" */ '../components/power/Roles.vue')

// import Cate from "../components/goods/Cate.vue"
const Cate = () => import(/* webpackChunkName: "cate_params_list" */ '../components/goods/Cate.vue')
// import Params from "../components/goods/Params.vue"
const Params = () => import(/* webpackChunkName: "cate_params_list" */ '../components/goods/Params.vue')
// import List from "../components/goods/List.vue"
const List = () => import(/* webpackChunkName: "cate_params_list" */ '../components/goods/List.vue')

// import Add from "../components/goods/Add.vue"
const Add = () => import(/* webpackChunkName: "add_order_report" */ '../components/goods/Add.vue')
// import Order from "../components/order/Order.vue"
const Order = () => import(/* webpackChunkName: "add_order_report" */ '../components/order/Order.vue')
// import Report from "../components/report/Report.vue"
const Report = () => import(/* webpackChunkName: "add_order_report" */ '../components/report/Report.vue')

Vue.use(VueRouter)

// const routes = 

const router = new VueRouter({
    routes: [
      {
        path: '/',
        redirect: 'Login'
      },
      {
        path: '/login',
        name: 'Login',
        component: Login
      },
      {
        path: "/home",
        name: "Home",
        component: Home,
        redirect: "/welcome",
        children: [
          { path: "/welcome",component: Welcome },
          { path: "/users",component: Users },
          { path: "/rights",component: Rights },
          { path: "/roles",component: Roles },
          { path: "/categories",component: Cate },
          { path: "/params",component: Params },
          { path: "/goods",component: List },
          { path: "/goods/add",component: Add },
          { path: "/orders",component: Order },
          { path: "/reports",component: Report },
      ]
      },
    ]
})

// 为路由对象添加 beforeEach 导航守卫
router.beforeEach((to,form,next) => {
  // 如果用户访问的是登录页，直接放行
  if(to.path === "/login") return next() 
  // 从sessionStorage中获取token值
  let token_str = window.sessionStorage.getItem("token");
  // console.log(token_str)
  // 没有token跳转到登录页
  if(!token_str) return next("/login")
  // 有token，放行
  next()
})



export default router
